.app-container {
    max-width: 1200px; /* 设置容器最大宽度为1200px，防止内容过宽 */
    margin: auto; /* 水平居中 */
}


/* 打印容器样式：用于包裹整个打印页面的内容 */
.print-container {
    background-color: #fff; /* 白色背景 */
    padding: 30px; /* 内边距，打印内容与边框之间的距离 */
    border: 1px solid #f0f0f0; /* 灰色细边框 */
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1); /* 轻微阴影，提升视觉层次 */
    position: relative; /* 相对定位，为内部绝对定位元素提供参考 */
}

/* 页面头部样式：包含LOGO、标题和编号 */
.header-section {
    display: flex; /* 使用Flex布局 */
    justify-content: space-between; /* 水平分布：左右对齐 */
    align-items: center; /* 垂直居中 */
    margin-bottom: 30px; /* 下边距 */
    padding-bottom: 20px; /* 下内边距 */
    border-bottom: 2px solid #1890ff; /* 蓝色下边框分隔线 */
}

/* 图片样式 */
.company-logo {
    width: 80px; /* 宽度80px */
    height: 80px; /* 高度80px */
    background: #e6f7ff; /* 浅蓝色背景 */
    border: 1px dashed #91d5ff; /* 蓝色虚线边框 */
    display: flex; /* Flex布局 */
    align-items: center; /* 垂直居中 */
    justify-content: center; /* 水平居中 */
    color: #1890ff; /* 蓝色文字 */
    font-weight: bold; /* 加粗字体 */
}

/* 标题区域样式 */
.header-content {
    text-align: center; /* 文字居中 */
    flex: 1; /* 占据剩余空间 */
    padding: 0 20px; /* 左右边距 */
}

.header-content h1 {
    color: #1890ff; /* 标题蓝色 */
    font-size: 24px; /* 字号 */
    margin-bottom: 10px; /* 下边距 */
}

.header-content p {
    margin: 5px 0; /* 上下边距 */
    color: #666; /* 灰色文字 */
}


/* 报表编号样式 */
.report-number {
    background: #f0f9ff; /* 浅蓝背景 */
    padding: 5px 15px; /* 内边距 */
    border: 1px solid #91d5ff; /* 边框 */
    border-radius: 4px; /* 圆角 */
    color: #1890ff; /* 蓝色文字 */
    font-weight: bold; /* 加粗 */
}


/* 表格区域样式 */
.table-section {
    margin: 30px 0; /* 上下边距 */
}


/* 页脚区域样式 */
.footer-section {
    margin-top: 40px; /* 上边距 */
    padding-top: 20px; /* 上内边距 */
    border-top: 1px solid #f0f0f0; /* 上边框 */
}


/* 签名区域：制表人、审核人、批准人 */
.signature-area {
    display: flex; /* Flex布局 */
    justify-content: space-around; /* 水平均匀分布 */
    margin: 30px 0; /* 上下边距 */
}

.signature-area > div {
    text-align: center; /* 内容居中 */
}

.signature-area p {
    margin: 10px 0; /* 上下边距 */
}


/* 页脚底部说明文字 */
.footer-note {
    text-align: center; /* 居中对齐 */
    color: #999; /* 灰色文字 */
    font-size: 12px; /* 小字号 */
    margin-top: 20px; /* 上边距 */
}

/* 打印样式（仅在打印时生效） */
@media print {
    body {
        margin: 0; /* 去除默认边距 */
        padding: 0; /* 去除默认内边距 */
        background: #fff; /* 白色背景 */
    }

    .app-container {
        max-width: 100%; /* 容器宽度占满 */
        margin: 0; /* 去除边距 */
        padding: 0; /* 去除内边距 */
    }

    .ant-card, .ant-card-head, .ant-card-body {
        border: none !important; /* 去除卡片边框 */
        padding: 0 !important; /* 去除内边距 */
        margin: 0 !important; /* 去除外边距 */
        box-shadow: none !important; /* 去除阴影 */
    }

    .print-container {
        width: 297mm; /* A4横向宽度 */
        min-height: 210mm; /* A4横向高度 */
        padding: 15mm; /* 页边距 */
        margin: 0; /* 去除边距 */
        box-shadow: none; /* 去除阴影 */
        border: none; /* 去除边框 */
    }

    /* 隐藏非打印元素 */
    .ant-card-extra,
    .ant-card-head-title,
    .ant-card-head,
    .ant-card-actions,
    .ant-btn {
        display: none !important; /* 打印时隐藏按钮、卡片标题等非必要元素 */
    }

    .table-section .ant-table {
        font-size: 12px; /* 减小表格字体 */
    }

    .table-section .ant-table-cell {
        padding: 8px !important; /* 减小单元格内边距 */
    }

    /* 分页控制：防止内容被截断 */
    .header-section, .table-section, .footer-section {
        page-break-inside: avoid; /* 避免在元素内部断页 */
    }
}
